//////////////////////////////////////////////////////////////////////////
#include <iostream>
#include <Core/Core.hpp>
#include <chrono>
#include <thread>
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>
#include <SFML/OpenGL.hpp>
#include <TweakUtils/TweakPanel.hpp>

// Begin testing Rocket.
#include <Rocket/Core.h>
#include <Rocket/Controls.h>
#include <Rocket/Debugger.h>
#include <FileSystem/FileSystem.hpp>

// 
#include "Application.hpp"


int main( int argc, char** argv )
{
	google::ParseCommandLineFlags( &argc, &argv, true );
#ifndef OS_WINDOWS
	google::InstallFailureSignalHandler();
#endif
	google::LogToStderr();
	google::InitGoogleLogging( argv[ 0 ] );

	int result	=	0;
	{
		{
			//////////////////////////////////////////////////////////////////////////
			// Run the application.
			XO::Application	application( argv[ 0 ], "Hiwas", "XO" );

			result	=	application.Run();
		}
	}

	google::ShutdownGoogleLogging();
	return result;
}
